home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Applications 1996 May / SGI IRIX 6.2 Applications 1996 May.iso / dist / impr_dev.idb / usr / include / scanconv.h.z / scanconv.h
C/C++ Source or Header  |  1996-05-06  |  2KB  |  78 lines

  1. #ifndef __SCANCONV_H__
  2. #define __SCANCONV_H__
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6.  
  7. /*
  8.  * scanconv.h
  9.  *
  10.  *     Converting between image data types, a row at a time
  11.  *
  12.  * Copyright 1992, Silicon Graphics, Inc.
  13.  * All Rights Reserved.
  14.  *
  15.  * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics,
  16.  * Inc.; the contents of this file may not be disclosed to third
  17.  * parties, copied or duplicated in any form, in whole or in part,
  18.  * without the prior written permission of Silicon Graphics, Inc.
  19.  *
  20.  * RESTRICTED RIGHTS LEGEND:
  21.  * Use, duplication or disclosure by the Government is subject to
  22.  * restrictions as set forth in subdivision (c)(1)(ii) of the Rights
  23.  * in Technical Data and Computer Software clause at DFARS
  24.  * 252.227-7013, and/or in similar or successor clauses in the FAR,
  25.  * DOD or NASA FAR Supplement. Unpublished - rights reserved under the
  26.  * Copyright Laws of the United States.
  27.  */
  28.  
  29. #ident "$Revision: 1.10 $"
  30.  
  31. /*
  32.  * Units
  33.  */
  34.  
  35. #define CMPERINCH (2.54)
  36.  
  37. #define INCHTOCM(inch) ((inch) * CMPERINCH)
  38. #define CMTOINCH(cm) ((cm) / CMPERINCH)
  39.  
  40. /*
  41.  * Zooming
  42.  */
  43. #define GRIDTOFLOAT(pos,n)    (((pos)+0.5)/(n))
  44. #define FLOATTOGRID(pos,n)    ((pos)*(n))
  45.  
  46. #if defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS)
  47.  
  48. int *SCCreateZoomMap(int anx, int bnx);
  49. void SCDestroyZoomMap(int *zmap);
  50. void SCZoomRow1(void *abuf, int anx, void *bbuf, int bnx, int *zmap);
  51. void SCZoomRow3(void *abuf, int anx, void *bbuf, int bnx, int *zmap);
  52. void SCZoomRow4(void *abuf, int anx, void *bbuf, int bnx, int *zmap);
  53. void SCZoomRow8(void *abuf, int anx, void *bbuf, int bnx, int *zmap);
  54. void SCZoomRow24(void *abuf, int anx, void *bbuf, int bnx, int *zmap);
  55. void SCZoomRow32(void *abuf, int anx, void *bbuf, int bnx, int *zmap);
  56.  
  57. /*
  58.  * Zooming and transforming at the same time
  59.  */
  60. void
  61. SCBandRGB8ToPixelRGB8(void *frombuf, int fromx, void *tobuf, int tox,
  62.               int *zmap);
  63.  
  64. void
  65. SCGrey8ToMono(unsigned char thresh, void *frombuf, int fromx,
  66.           void *tobuf, int tox, int *zmap);
  67.  
  68. void
  69. SCBandRGB8ToMono(unsigned char thresh, void *from, int fromx,
  70.          void *to, int tox, int *zmap);
  71.  
  72. #endif /* C || C++ */
  73.  
  74. #ifdef __cplusplus
  75. }
  76. #endif
  77. #endif /* !__SCANIPC_H__ */
  78.